import java.util.Scanner;

public class BinarySearch {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        long n = in.nextLong();
        long m = in.nextLong();
        long t = in.nextLong();
        // System.out.println("n = " +n+" m = "+ m);
        Scanner sc = new Scanner(System.in);
        System.out.println(2 % 4);
    }

    /**
     * 点名
     */
    public int takeAttendance(int[] records) {
        int n = records.length;
        int l=0,r=n-1;
        while(r>l){
            int mid = l+(r-l)/2;
            if(records[mid]>mid) r=mid;
            else l = mid+1;
        }
        //找到了第一个下标不对的数据的位置
        if(records[l]==l){
            //也有可能都相同
            return records[l]+1;
        }
        return l;
    }

    /**
     * 寻找旋转排序数组中的最小值 在最右边的数字比左边的一段小 这就是二段性
     */
    public int findMin(int[] nums) {
        int n = nums.length;
        int l = 0, r = n-1;
        //先找到这里面最大的 加1就是了
        while(r>l){
            int t = l+(r-l+1)/2;
            if(nums[t]>nums[l]){
                l=t;
            }else{
                r = t-1;
            }
        }
        return nums[(l+1)%n];
    }
    /**
     * 山脉数组的峰顶索引 and 寻找峰值
     */

    public int peakIndexInMountainArray(int[] arr) {
        int n = arr.length;
        int l = 0, r = n - 1;
        while(l < r){
            int mid = l + (r - l)/2;
            if(mid+1<n&&arr[mid]>arr[mid+1]) r = mid;
            else l = mid + 1;
        }
        return r;
    }
    /**
     * 搜索插入位置
     */
    public int searchInsert(int[] nums, int target) {
        int n = nums.length;
        int l = 0, r = n;
        while(l<r){
            int mid = l+(r-l)/2;
            if(nums[mid] < target) l = mid + 1;
            else r = mid;
        }
        // System.out.println(l);
        return r;
        // return nums[l]<target?l+1:l;
    }


    /**
     * x 的平方根
     */
    public int mySqrt(int x) {
        if(x == 0) return 0;
        int l=1,r=x;
        while(l<r){
            int mid = l+(r-l+1)/2;
            // System.out.println(" mid= "+mid +" l= "+l+" r="+r+" pox="+pox);
            if(mid > x / mid){
                r = mid - 1;
            }else{
                l = mid;
            }
        }
        return l;
    }
    /**
     *
     * 在排序数组中查找元素的第一个和最后一个位置
     */
    //分俩次查找左右指针
    public int[] searchRange(int[] nums, int target) {
        int n = nums.length;
        int[] ret = new int[]{-1,-1};
        if(n == 0) return ret;
        int l = 0, r = n - 1;
        //先找左边的节点
        while(l<r){
            int mid = l + (r - l) / 2;
            if(nums[mid]<target){
                l=mid+1;
            }else{
                r=mid;
            }
        }
        if(nums[l]==target) ret[0] = l;
        //找右边的
        l = 0; r = n - 1;
        while(l<r){
            int mid = l + (r - l + 1) / 2;
            if(nums[mid]<=target){
                l = mid;
            }else{
                r = mid - 1;
            }
        }
        if(nums[r]==target) ret[1] = r;

        return ret;
    }
}
